Twilio iOS客户端未通过连接

时间:2016-05-13 02:20:24

标签: ios twilio

Twilio的另一个问题对我而言。所以,我正在尝试使用参数与另一个用户建立连接。这是我的代码:

-(void)connect:(CDVInvokedUrlCommand*)command {
    NSLog(@"The content of dict is%@",[command.arguments objectAtIndex:0]);

    NSDictionary *dict = [command.arguments objectAtIndex:0];

    for(NSString *key in [dict allKeys]) {
        NSLog(@"%@",key);
        NSLog(@"%@",[dict objectForKey:key]);
    }

    [self.device connect:dict delegate:self];
}

问题:无论我在NSDictionary中拥有什么,都没有传递给服务器。我已尝试过多个参数,没有任何内容通过。甚至不是To参数,也不是其他自定义参数。它适用于所有其他平台,但不适用于iOS。

我在这里失踪了什么?根据文档它应该工作,连接方法是以NSDictionary为输入, -connect:(NSDictionary*)params delegate:(id<TCConnectionDelegate>)delegate,我应该在哪里看看?

PS。这是我在过去几天里遇到的另一个大问题Twilio lib。我得到了足够的。

2 个答案:

答案 0 :(得分:1)

好的,问题是我用带有整数值的键传递NSDictionary。 -connect方法仅接受<NSString NSString> NSDictionary

答案 1 :(得分:0)

让我们弄明白这一点。从您的代码示例中可以清楚地看出,您作为参数传递了哪些完全,如果我建议您可能已经尝试过的话,请原谅我。

如果你尝试这样的话,会发生什么?

NSDictionary *params = @{@"To": "number_to_dial"};
_connection = [_phone connect:params delegate:self];

如果这不起作用,我们可以确定问题出在帐户,令牌或应用程序本身。

The iOS sample显示了如何传递拨号参数,但开发人员仍有责任创建包含Twilio识别的拨号命令标记的正确​TwiML

如果通过调用您的服务器而没有传入任何参数,则CallSid方法中应该有一个Twilio TCConnectionDelegate.connectionDidConnect:。如果是这种情况,我建议使用该Sid contacting support,我们可以从服务器中挖掘更多信息,以查看传递的参数。

以下是检索CallSid

的方法
- (void)connectionDidConnect:(TCConnection *)connection {
    NSString *callsid = [[connection parameters] objectForKey:@"CallSid"];
    ...
}

你能看到你是否能够看到这个回调方法被调用,并尽可能提供CallSid