Я использую последний SDK Twilio, который они выпустили на CocoaPods на сегодняшний день.Я пытаюсь реализовать функцию VOIP в своем приложении с помощью Twilio Programmable Voice.Мой бэкэнд - .net, который также использует последнюю версию Twilio Helper Library для C #.
Мой код клиента выглядит так:
fetchAccessToken { (accessToken: String) in
TwilioVoice.register(withAccessToken: accessToken, deviceToken: deviceToken) { (error) in
if let error = error {
NSLog("An error occurred while registering: \(error.localizedDescription)")
}
else {
NSLog("Successfully registered for VoIP push notifications.")
}
}
}
В консоли я получаю следующее:
voipTestWithTwilio[2431:517236] [ERROR TwilioVoice] Inside register:deviceToken:completion:, failed to register for Twilio push notifications. Error:Invalid access token signature
voipTestWithTwilio[2431:517236] An error occurred while registering: Invalid access token signature
Это код C #, который фактически создает токен:
var grant = new VoiceGrant
{
OutgoingApplicationSid = outgoingApplicationSid
};
var grants = new HashSet<IGrant> { { grant } };
var token = new Token(
accountSid: accountSid,
signingKeySid: apiKey,
secret: apiSecret,
identity: identity,
grants: grants
);
return token.ToJwt();
Я искал проблему в Интернете, пока ничего не помогло.Я пытался связаться с ними, но не получил никакого ответа.Я также попытался пару раз создать новые ключи API и даже новый проект для Twilio.Кто-нибудь может сказать что-нибудь об этой проблеме?
ОБНОВЛЕНИЕ
Я добавил sid push-уведомлений в VoiceGrant, и теперь я получаю 403 Запрещено .
На странице с кодами ошибок Twilio это объясняется следующим образом: « Срок действия, указанный в токене доступа, превышает максимально допустимую продолжительность. », что, безусловно, не в моем случае.Однако я попытался передать параметр срока действия в конструкторе Token
с различными значениями, которые не изменили результат.
Проблема все еще сохраняется.