三不朽

如何使用MySQL查找多边形地理围栏中包含的点

Publish: October 15, 2020 Category: 编程 No Comments

与其他数据库(如Postgres)相比,MySQL在地理空间方面的应用有点晚,但随着5.6和5.7版本的发布,许多新的GIS功能最终得以实现。例如,在5.7中,我们得到了:

  • ST_Distance_Sphere可计算球体上两点之间的距离。
  • InnoDB空间索引
  • GeoJSON集成,引用RFC的话,“一种基于JSON的地理空间数据交换格式。”

有很多有趣的事情我们现在可以完成使用这些新的情势。今天我将展示一个非常简单的例子,说明如何使用多边形和点进行搜索。这里的目标是回答“这一点在这个城市吗?”?”.

定义点

首先,让我们创建一个带有名称和一组坐标的“places”表。但是,我将使用一个点,而不是将纬度和经度存储为两个不同的浮动。

CREATE TABLE `places` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(256) DEFAULT NULL,
  `coordinates` point DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

阅读剩余部分...

一种简单的基于多边形方法的地理围栏c#语言描述

Publish: October 15, 2020 Category: 编程 No Comments

介绍

使用GPS跟踪设备的GPS跟踪软件的一个重要功能是地理围栏及其帮助跟踪资产的能力。地理围栏允许GPS跟踪解决方案的用户在工作场所、客户场所和安全区域周围绘制区域(即地理围栏)。当这些地理围栏被配备GPS的车辆或人员越过时,可以通过短信或电子邮件向用户或运营商发出警告。

关怀区域异常回报

地理围栏是地理区域上使用基于位置的服务的虚拟周界,因此当地理围栏设备进入或退出该区域时,将生成通知。通知可以包含有关设备位置的信息,并且可以发送到移动电话或电子邮件帐户。参考文献:http://en.wikipedia.org/wiki/geofance

背景

对于地理围栏,我使用了多边形地理围栏方法,即在路线或区域周围绘制多边形。使用这种方法,GPS跟踪设备可以在多边形内部或外部进行跟踪。

阅读剩余部分...

freeswitch中使用webapi操作控制

Publish: September 25, 2020 Category: 编程 No Comments

FreeSwitch支持多种方式的控制配置,使用webapi方式相对其他方式命令简单,比较直观。期认证方式为HTTP Basic认证方式,也就是在发送控制命令的时候携带用户名密码即可。

如果开启了mod_curl模块,在浏览器中访问 http://your-host:8080/webapi/help 会看到如下所有命令。

.    Shutdown  mod_commands
acl  <ip> <list_name>  Compare an ip to an acl list  mod_commands
alias  [add|stickyadd] <alias> <command> | del [<alias>|*]  Alias  mod_commands
amr_debug  <on|off>  Set AMR Debug  mod_amr
av  debug [on|off] | show <formats | codecs>  AV general commands  mod_av
banner    Return the system banner  mod_commands
bg_system  <command>  Execute a system command in the background  mod_commands
bgapi  <command>[ <arg>]  Execute an api command in a thread  mod_commands
break  <uuid> [all]  uuid_break  mod_commands
cdr_csv  parameters  cdr_csv controls  mod_cdr_csv
chat  <proto>|<from>|<to>|<message>|[<content-type>]  chat  mod_dptools
coalesce  [^^<delim>]<value1>,<value2>,...    

以上只列举了一部分。

阅读剩余部分...

freeswitch安装图形用户界面FreeSwitch Portal

Publish: September 18, 2020 Category: 运维 No Comments

使用侵入性最低的方案。FreeSwitch Portal

freeswitch portal为内置模块,开箱即用(Out of the Box)
安装完成之后只需要启用就可以

fs_cli
load mod_xml_rpc

如果想跟随freeswitch启动则直接操作配置文件具体如下:

#conf/autoload_configs/modules.xml 中去掉如下注释:
<load module="mod_xml_rpc"/>

阅读剩余部分...

使用Docker在Debian10中构建FreeSwitch镜像

Publish: September 18, 2020 Category: 运维 No Comments

尝试了多种方案,包括ubuntu下的编译安装等,由于依赖原因都没有很好的解决。最终选定官方推荐的直接安装编译的安装包。
构建过程如下:
由于我是在阿里云ECS中构建的上述服务,首先安装docker


apt install docker.io
docker pull debian
docker run -idt --name=freeswitch debian /bin/bash

添加新的source资源:

apt-get update && apt-get install -y gnupg2 wget lsb-release
wget -O - https://files.freeswitch.org/repo/deb/debian-release/fsstretch-archive-keyring.asc | apt-key add -
echo "deb http://files.freeswitch.org/repo/deb/debian-release/ `lsb_release -sc` main" > /etc/apt/sources.list.d/freeswitch.list
echo "deb-src http://files.freeswitch.org/repo/deb/debian-release/ `lsb_release -sc` main" >> /etc/apt/sources.list.d/freeswitch.list

更新源并安装:
默认情况下freeswitch的配置文件在/etc/freeswitch目录,资源文件在/usr/share/freeswitch目录。


apt-get update && apt-get install -y freeswitch-meta-all

启动


freeswitch