小编ste*_*r84的帖子

准确读取iPhone信号强度

关于此问题已经有几个问题,但它们中的任何内容似乎都无法提供准确的结果.我需要确定手机是否在特定时刻连接到手机网络.

http://developer.apple.com/library/ios/#documentation/NetworkingInternet/Reference/CTCarrier/Reference/Reference.html

此类似乎记录不正确,返回mobileCountryCode,isoCountryCode和mobileNetworkCode的值,其中没有为手机安装SIM卡.carrierName表示"家庭"网络或以前的家庭网络(如果电话已解锁).

我也查了一下,发现有些人声称以下工作,它使用了CoreTelephony框架的一个未记录的方法,但结果对我来说没用,报告看似随机的数字,也许它本身并不是一致的更新.

-(int) getSignalStrength
{
    void *libHandle = dlopen("/System/Library/Frameworks/CoreTelephony.framework/CoreTelephony", RTLD_LAZY);
    int (*CTGetSignalStrength)();
    CTGetSignalStrength = dlsym(libHandle, "CTGetSignalStrength");
    if( CTGetSignalStrength == NULL) NSLog(@"Could not find CTGetSignalStrength");
    int result CTGetSignalStrength();
    dlclose(libHandle);
    return result;
}
Run Code Online (Sandbox Code Playgroud)

谢谢.

编辑:该应用程序连接到内部wifi,必须保持这样,使得可达性检查更加困难.

iphone xcode signals objective-c

10
推荐指数
2
解决办法
1万
查看次数

无法从python aws lambda函数中运行二进制文件

我试图在lambda函数中运行此工具:https://github.com/nicolas-f/7DTD-leaflet

该工具依赖于Pillow,它依赖于AWS​​ lambda容器中不可用的映像库.为了试图绕过这个我运行pyinstaller来创建一个我希望可以执行的二进制文件.此文件已命名map_reader并位于lambda zip包的顶层.

下面是我用来尝试运行该工具的代码:

command = 'chmod 755 map_reader'
args = shlex.split(command)
print subprocess.Popen(args)

command = './map_reader -g "{}" -t "{}"'.format('/tmp/mapFiles', '/tmp/tiles')
args = shlex.split(command)
print subprocess.Popen(args)
Run Code Online (Sandbox Code Playgroud)

这是第二次subprocess.Popen调用时发生的错误:

<subprocess.Popen object at 0x7f08fa100d10>
[Errno 13] Permission denied: OSError
Run Code Online (Sandbox Code Playgroud)

我怎样才能正确运行?

python pyinstaller amazon-web-services python-2.7 aws-lambda

9
推荐指数
2
解决办法
6971
查看次数

替换第二次出现的 ? 带着 &

任何人都可以提供适当的代码来仅替换“?”的第二个实例。在带有“&”的字符串中?

我环顾四周,但似乎无法完成,而且一开始我对正则表达式并不太感冒。

谢谢

c# regex

5
推荐指数
1
解决办法
6175
查看次数

Facebook Messenger的Microsoft Bot Framework附件

带有Facebook Messenger按钮的Microsoft Bot Framework消息

我的问题与上面提到的问题有关.我正在使用不使用bot builder sdk的node.js编写机器人.我手动返回ms bot连接器服务的兼容响应.这对于文本响应工作正常,但我希望返回更复杂的响应,例如可以使用messenger返回的按钮/轮播.根据我上面提到的问题,我猜测了格式并添加了以下内容:

response.attachments = [ { "Title": "Choose One: ", "Actions": [{ "Title": "Postback!", "Message": "Postback from button" }, { "Title": "Postback2!", "Message": "Postback2 from button" }] } ];
Run Code Online (Sandbox Code Playgroud)

顶级标题似乎什么都不做,但操作正确呈现为回发类型按钮(它们将消息作为回发内容发送).使用messenger,您还可以选择返回基于URL的按钮和图像URL.

据我所知,使用节点机器人构建器sdk返回附件没有文档.如果有,我只是用sdk编写机器人以获得响应格式.

所以我的问题是,有没有人知道如何正确地将回发和基于url的按钮返回到bot连接器服务,包括附带的图像,有或没有机器人构建器sdk?

2016年5月5日更新

所以我找到了下面的链接,你可以看到附件属性的定义:

http://docs.botframework.com/sdkreference/nodejs/interfaces/_botbuilder_d_.imessage.html

如果您遵循IAttachment规范,它会让我想知道上面的代码是如何/为何起作用的?作为对该格式的测试,我在下面写道:

    var att = {};
    att.content = "I am content";
    att.contentType = "text/plain";
    att.contentUrl = "http://www.google.com";
    att.fallbackText = "I am fallback text";
    att.text  = "I am text";
    att.thumbnailUrl = "https://pbs.twimg.com/profile_images/638751551457103872/KN-NzuRl.png";
    att.title  ="I am title";
    att.titleLink = "http://yahoo.com";
Run Code Online (Sandbox Code Playgroud)

现在处于松弛状态,我得到了一个相当不错的输出: 在此输入图像描述

但是在messenger中我收到"Service …

node.js facebook-messenger botframework

5
推荐指数
1
解决办法
1247
查看次数