zoukankan      html  css  js  c++  java
  • unity手游之聊天SDK集成与使用二

    集成思路

    如果是自己的小游戏的话,可以把好友等信息直接保存在亲加服务器上,通过调用api来操作。

    我们游戏只使用sdk的通信功能,好友等信息保存在自己的服务器上。

    用户在登陆游戏的时候,通过算法用用户的唯一ID去登陆 亲加SDK。(去登陆聊天SDK的用户ID或创建群时的ID可以 通过用户ID/公会ID 再用算法加工变换一下生成一个,避免重复)

    游戏服务器不集成亲加SDK,只有前端集成。

    下面SDK指亲加聊天SDK API接口

    服务器通知前端 游戏登陆成功: 前端-调用聊天sdk api登陆 ,前端-从服务器获取聊天室列表,通过sdk进入世界聊天室、(公会)聊天群(如果有公会的话)
    服务器通知前端 创建公会成功: 前端-sdk 创建(公会)聊天群【公开群】
    服务器通知前端 加入公会成功: 前端-调用sdk 加入(公会)聊天群
    服务器通知前端 公会踢出玩家/玩家退出公会 成功: 前端-调用sdk 退出(公会)聊天群 等。

     
    语音API使用
     注:如果在PC上测试,发送语音,需要插上带麦克的耳机,或者话筒,才能发语音成功。必须监听ChatListener,否则无法收到回调。
     
    创建语音
    1.开始录音
    api.StartTalk (new GotyeUser(talkToName),GotyeWhineMode.GotyeWhineModeDefault,false,600000);

    2.结束录音

    api.StopTalk();

    3.在StopTalk的回调里,发送语音

    public void onStopTalk(GotyeStatusCode code, bool realtime, GotyeMessage message)
    {
       //StartTalk里参数是否是实时语音必须为false,否则message为null
      //发送语音
      api.SendMessage(message); }

    接收语音
    接收消息(文本/图片/语音)

    public override void onReceiveMessage(GotyeMessage message)
      {
            if (message.Type == GotyeMessageType.Text) {
    
            }
            else if(message.Type == GotyeMessageType.Audio)
            {
                if(File.Exists(message.Media.Path))//如果本地有这个语音文件,直接播放这个消息
                {
                    api.PlayMessage(message);
                }
                else
                {
                    //下载语音文件
                    api.DownloadMediaInMessage(message);
                }
            }
        }    

    下载语音/图片文件,并播放

    public void onDownloadMediaInMessage(GotyeStatusCode code, GotyeMessage message)
        {
            if (code == GotyeStatusCode.CodeOK) {
                if (message.Type == GotyeMessageType.Image) {
                     Debug.Log ("下载消息中的图片成功!");                
                } else if (message.Type == GotyeMessageType.Audio) {
               Debug.Log ("下载消息中的音频成功!");
                     GotyeMedia media = message.Media;
              //播放语音
                     api.PlayMessage(message);
                }            
            }
        }
  • 相关阅读:
    软件架构师如何工作(即架构漫谈读后感)
    寒假学习记录22
    寒假学习记录21
    寒假学习记录20
    实验四 LL(1)语法分析
    大学生熬夜情况调查结果分析
    大学生熬夜情况调查计划
    实验三 递归下降分析分析法
    实验一 根据状态转换图手工构造词法扫描器
    《软件需求工程》阅读笔记06
  • 原文地址:https://www.cnblogs.com/rentianlong/p/4943523.html
Copyright © 2011-2022 走看看