1
MacsedProtoss 2 天前 via iPhone VPN 正常情况下是不会被断开的,是正常的 network extension 独立进程
你这个绝对不是 VPN 的问题 |
2
vTwoX 2 天前
同在用这个软件,之前以为没有 callkit ,原来是要改为非大陆,我是用的自部署,不知道这种方式,启用 callkit 也需要能访问 matrix.org 这个地址吗?
|
3
kiev84 2 天前
直接使用非大陆版的 iPhone
|
4
basncy OP @MacsedProtoss 所以那是什么 vpn ?另外,在服务器上可以通过重连记录来判断有没有断开。
@vTwoX 是的,如果在梯子服务器上把 matrix.org 给屏了,就不会出现 callkit 了。最近还发现,如果梯子服务器通过 warp 访问 matrix.org,也不会出现 callkit 。 |
5
basncy OP @vTwoX 自建也要能访问 matrix.org 来电时才能激活 callkit ,属于是断得不彻底(对比 android 不依赖 GCM)。
|
6
YamatoRyou 2 天前
经过测试 即便 iPhone 连接的是有透明代理的 Wi-Fi, 偶尔也不显示 Callkit. 我暂时没有发现规律, 可能与代理节点也有关.
|
7
YamatoRyou 2 天前
@YamatoRyou #6 另外自建的 Matrix 也需要确保其也能访问 matrix.org.
|
8
MacsedProtoss 2 天前 via iPhone
@basncy 所有的 VPN 都不会断开的,至于我自用那肯定是 surge
你可以写一个 demo app 申请后台任务 然后就是无法请求到你的服务器 然后打开你的 VPN 之后再打开 demo 再锁屏,你可以在你的服务器看到锁屏之后依然有走代理到你的服务器的请求 VPN 服务是专门的进程的,你就算把你认为的 VPNapp 杀掉,也只是杀掉他的 UI 配置进程,不影响 VPN 运行 |
9
basncy OP @YamatoRyou #6 你检查一下透明代理网关的 DNS 查询记录,在收到 call 的时候,似乎会询问 matrix.org 本设备是否能激活 callkit ,然后此状态会缓存一段时间。
@YamatoRyou 回去试一下 surge. 我用的是 openvpn 回家走透明代理。 |
10
134432233 2 天前 via iPad
我也在用 Element ,但是有一個很頭疼的問題,就是沒辦法清理聊天記錄,要麼一條條刪除,要麼離開兩個人的會話再重新加回來,太麻煩了
|
11
basncy OP 听说 element X push 流程不一样,在国行 ipad 上试了一把,callkit 可用.
有 iphone 的同学可以试试,我只有 android 。 |
12
YamatoRyou 21 小时 33 分钟前
@basncy #9
我用得最多的代理方式是路由器, 只能在 SmartDNS 日志中看到 iPhone 尝试解析 matrix.org 而没有具体细节. 在 iPhone 上的两款新旧版应用的表现似乎有区别: 旧版应用能看到的 Callkit 的机会似乎多一些, 而新版要差一些. iPhone 已经过如下配置: - 地区设为美国; - 全天连接透明代理的 Wi-Fi, 且 DNS 有基本的分流处理; 但实测后发现几乎没有改善. |
13
basncy OP @YamatoRyou #12
element classical 请求的是 https://matrix.org/_matrix/push/v1/notify element X 只向 homeserver 请求,但后端处理流程更长。 相关 issue: https://github.com/element-hq/element-ios/issues/7980 |
14
YamatoRyou 16 小时 12 分钟前
@basncy #11
我的机器是美版 iPhone SE 3, 我做了以下调整: - 设置 iPhone 地区为中国大陆; - 设置 iPhone 显示语言为简体中文; - 停止路由器上的透明代理 (但服务器仍然可以访问 matrix.org); - 额外尝试: iPhone 连接到另一机器开启的热点, 而上游是蜂窝网络. 结果: iPhone 上的 Element X 确实可以显示 Callkit. 1. Element X 仍然名义上向我的服务器注册了 matrix.org 的 pusher, 我的理解大概是机器先请求我的服务器; 服务器再请求 matrix.org; matrix.org 再请求 APNS, 最后的通知由 APNS 推送给目标机器. 我印象中 IM 类应用在 iPhone 上的推送完全被苹果统一管理; 2. (不考虑旧版应用) Callkit 出现的时机比较奇怪: 在熄屏且唤醒间隔较长的情况下, Callkit 有时在对方等待即将超时才出现 (存在明显被推迟的现象), 有时甚至根本不出现 (不人工干预的前提下全程黑屏, 然后过几分钟屏幕才亮并显示一个文字通知). 已解锁且操作手机期间, Callkit 则有更高的概率以横幅 (位于屏幕顶端, 带红蓝按钮) 的形式出现 (也更及时); 3. 即使 iPhone 能因为收到来电而有所反应, 但也并非每次都能显示 Callkit. 偶尔一两次还是只显示文字通知. iPhone 上目前新旧版应用并存, 还处于过渡阶段. |