音频包附带自定义消息

最近更新时间:2022-01-14 17:54:37

为方便 GME 开发者调试和接入腾讯云游戏多媒体引擎产品 API,本文为您介绍适用于 GME 用户自定义音频包附带消息功能的使用参考文档。

发送自定义消息

调用此接口需要在房间类型为标准高清(ITMG_ROOM_TYPE_STANDARD 及 ITMG_ROOM_TYPE_HIGHQUALITY)的情况下,发送端需要开麦,接收端需要开下行。

接口原型

//iOS接口
-(int) SendCustomData:(NSData *)data repeatCout:(int)reaptCout;
//Unity接口
public abstract int SendCustomData(byte[] customdata,int repeatCout);

参数说明

参数 类型 含义
data NSData * 需要传递的信息
reaptCout int 重复次数,填入-1为无限次重复发送

返回值

接口返回值为 QAV_OK 则表示成功。

回调返回1004表示参数错误,建议重新检查参数是否正确。返回1201表示房间不存在,建议检查房间号是否正确。

更多错误码请参考 错误码 文档。

示例代码

执行语句

-(IBAction)SendCustData:(UIButton*)sender {
    int ret = 0;
    NSString *typeString;
    switch (sender.tag) {
        case 1:
            ret = [[[ITMGContext GetInstance] GetRoom] SendCustomData:[NSData dataWithBytes:_shareRoomID.text.UTF8String length:_roomIdText.text.length] repeatCout:_shareOpenID.text.intValue];
            typeString = @"sendCustData";
            break;
          case 2:
            ret = [[[ITMGContext GetInstance] GetRoom] StopSendCustomData];
            typeString = @"recvCustData";
            break;
        default:
            break;
    }
    if(ret != 0) {
        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"set fail" message:[NSString stringWithFormat:@"%@:errorcode :%d",typeString,ret] delegate:NULL cancelButtonTitle:@"OK" otherButtonTitles:nil];
        [alert show];
    }
}

回调

-(void)OnEvent:(ITMG_MAIN_EVENT_TYPE)eventType data:(NSDictionary *)data{
    NSString* log =[NSString stringWithFormat:@"OnEvent:%d,data:%@", (int)eventType, data];
    switch (eventType) {
                 case   ITMG_MAIN_EVENT_TYPE_CUSTOMDATA_UPDATE: {
            if (ITMG_CUSTOMDATA_AV_SUB_EVENT_UPDATE == ((NSNumber *)data[@"sub_type"]).intValue) {
                UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"customdata" message:[NSString stringWithFormat:@"内容:%@,from:%@ ",data[@"content"],data[@"senderid"]] delegate:NULL cancelButtonTitle:@"OK" otherButtonTitles:nil];
                                    [alert show];
            }
        }
            break;
    }
}

停止发送自定义消息

调用此接口停止发送自定义消息。

接口原型

//iOS接口
-(int) StopSendCustomData;
//Unity接口
public abstract int StopSendCustomData();

返回值

如果接口返回1003代表已经操作了 StopSendCustomData,SDK正在进行这个操作,无需再次调用。

目录