可能有些人连配置都没法新增 把vtigerCRM\modules\SMSNotifier\models 下的
Provide.php页面的
if (!in_array($file, array('.', '..', 'MyProvider.php', 'CVS'))) {
改成
if (!in_array($file, array('.', '..', 'MyProvider.php', 'SMSProvider.php'))) {
然后进入 SMS供应商配置
vtiger crm6.0默认的是 Clickatell
Clickatell是一家加州的移动网关公司,他们的业务主要是B2C短信,比如帮助商家向客户群发折扣信息、广告和其他通知短信等等。 我们国内一般不用这家公司的短信接口服务
都有自己的服务
要加自己的配置 这里最下面一句话有提到 https://wiki.vtiger.com/index.php/SMSNotifier_Module
Writing Custom Providers
If you have planning to use SMS service provider and don't find the connector to it, you will need to write one.
SMSNotifier module defines ISMSProvider (modules/SMSNotifier/ext/ISMSProvider.php) interface which should be implemented by your custom provider.
A template sample provide is available at: modules/SMSNotifier/ext/providers/MyProvider.php.sample
Also look at ClickATell provider implementation: modules/SMSNotifier/ext/providers/ClickATell.php
MyProvider.php.sample这个页面时5.4的
6.0没有
所以我们参考 ClickATell.php
把ClickATell.php这个页面复制一份
改个名字 我这里取名 qtsms.php
<?php
class SMSNotifier_qtsms_Provider implements SMSNotifier_ISMSProvider_Model {
private $userName;
private $password;
private $parameters = array();
const SERVICE_URI = '你的供应商url';
private static $REQUIRED_PARAMETERS = array(); //具体根据你的短信接口加参数 我的短信接口就一个账号密码 还有一个写死的参数所以这里不需要了放空就行了
/**
* Function to get provider name
* @return <String> provider name
*/
public function getName() {
return 'qtsms';
}
/**
* Function to get required parameters other than (userName, password)
* @return <array> required parameters list
*/
public function getRequiredParams() {
return self::$REQUIRED_PARAMETERS;
}
/**
* Function to get service URL to use for a given type
* @param <String> $type like SEND, PING, QUERY
*/
public function getServiceURL($type = false) {
return self::SERVICE_URI;
}
/**
* Function to set authentication parameters
* @param <String> $userName
* @param <String> $password
*/
public function setAuthParameters($userName, $password) {
$this->userName = $userName;
$this->password = $password;
}
/**
* Function to set non-auth parameter.
* @param <String> $key
* @param <String> $value
*/
public function setParameter($key, $value) {
$this->parameters[$key] = $value;
}
/**
* Function to get parameter value
* @param <String> $key
* @param <String> $defaultValue
* @return <String> value/$default value
*/
public function getParameter($key, $defaultValue = false) {
if(isset($this->parameters[$key])) {
return $this->parameters[$key];
}
return $defaultValue;
}
/**
* Function to prepare parameters
* @return <Array> parameters
*/
protected function prepareParameters() {
//主意 这里的accout和pswd是我 自己公司短信接口的账号和密码参数 你们要根据自己的公司短信接口的账号密码参数来写 这样才能成功调用短信接口
return array('account' => $this->userName, 'pswd' => $this->password,'needstatus'=>'true');
}
/**
* Function to handle SMS Send operation
* @param <String> $message
* @param <Mixed> $toNumbers One or Array of numbers
*/
public function send($message, $toNumbers) {
if(!is_array($toNumbers)) {
$toNumbers = array($toNumbers);
}
$params = $this->prepareParameters();
$params['msg'] = $message; //这是我公司短信接口的信息参数名字 根据你具体短信接口 信息参数来写
$params['mobile'] = implode(',', $toNumbers);
//这是我公司短信接口的手机号码参数名字 根据你具体短信接口 信息参数来写
$serviceURL = $this->getServiceURL();
$httpClient = new Vtiger_Net_Client($serviceURL);
$response = $httpClient->doPost($params);
$responseLines = split("\n", $response);
$result = array( 'error' => false, 'statusmessage' => '' );
$res=split(',',$responseLines[0]);
if($res[1]!=0){
$result['error']=true;
$result['statusmessage']='send failed';
$result['to'] = 'no number';
}else{
$result['id'] = $responseLines[1];
$result['to'] = $toNumbers;
$result['status']='Processing';
}
return $result;
}
/**
* Function to get query for status using messgae id
* @param <Number> $messageId
*/
public function query($messageId) {
//echo '12345';
$params = $this->prepareParameters();
$params['apimsgid'] = $messageId;
$serviceURL = $this->getServiceURL(self::SERVICE_QUERY);
$httpClient = new Vtiger_Net_Client($serviceURL);
$response = $httpClient->doPost($params);
$response = trim($response);
$result = array( 'error' => false, 'needlookup' => 1, 'statusmessage' => '' );
//var_dump($response);exit;
if($response==''){
$result['error'] = true;
$result['needlookup'] = 0;
$result['statusmessage'] = '发送失败';
}
return $result;
}
}
?>
这个文件新增后 SMS供应商配置新增配置后 下拉框里会多一个qtsms的选项
然后就填自己的参数值了
然后 在客户列表那里点击 发送sms就可以群发短信了
效果图 :
有什么问题 加我qq 6637152交流
- 大小: 24.2 KB
分享到:
相关推荐
vtiger crm 6.0源码包 最新版的vtiger
可以透过vtiger CRM 的厂商、制造商与经销商等单位取得商品信息*.透过仓库库存量与订单状况的整合来管理及时的库存水准*.可以根据各个组织需求自行调整的客户采购订单(PO)与销售订单(SO)字段*.避免动态显示付款与...
VTIGER CRM 6.0 正式版 简体中文语言包下载472014/01/13 | MAIE | 已有 3,154 次围观 Vtiger CRM 6.0.0 正式版已发布,目前官方网站已放在开源版本下载地址,初步观察 Vitger 6.0 正式版在 Vtiger 6.0 RC 的基础上...
vtigercrm 汉化vtigercrm 汉化vtigercrm 汉化vtigercrm 汉化vtigercrm 汉化
Vtiger CRM是一个免费开源客户关系管理系统 ,这是 Vtiger CRM 7.x 版本的第二个稳定性更新,标志着 Vtiger 7.x版本已经逐渐趋于稳定。本资源在官方7.1英文原版基础上集成简体中文语言包。
vtigerCRM开发笔记 adodb 数据库操作类 cache 缓存 include 公共调用文件 logs 日志 modules 模块 Smarty 模板引擎
ssdcrm是开源软件vtigercrm的深度汉化整合版本,它继承了vtigercrm灵活而强大的整合功能,方便二次开发与其他应用扩展. 电邮: yue11guang22ming@163.comThis 示范网站:www.89mc.net (账户与密码均为admin) 联系QQ:...
Vtiger+CRM从入门到放弃 Vtiger+CRM从入门到放弃 Vtiger+CRM从入门到放弃
vtiger6.0创建模块方法未测试,开发人员可以使用库来开发vtigerCRM的模块,添加新的功能,以vtigerCRM的。这些模块可以被包装用于方便安装模块管理器。
详细说明VtigerCRM用户如何设置及其使用方式,让您快速的进入实际应用VtigerCRM的各种功能.
vTigerCRM_Language 6.1.0 完美中文
vTiger 6.0 程序安装图文教程 ossez.com
全面的用中文介绍了VtigerCRM二次开发模块流程,希望能帮助到更多的少走弯路。
VtigerCRM 各模块查看、建立等等
精心整理的vtigercrm5.04汉化包及汉化方法 内附简体中文字体 此版include文件夹里的zh_cn.lang.php文件不正确,我重新上传了一次,罪过,罪过!正确版本请搜索 vtigercrm5.04汉化包及汉化方法(更正版)
使用wampserver部署Vtigercrm8流程
php CRM系统 vtiger 添加新模块技术文档。
最新vtigercrm 5.4 中文语言包,修正了一些翻译的错误。发扬开源精神,现共享出来,希望vtigercrm在中国能越来越好。
在老外网站摸到的表结构图 对于学习vtigercrm结构及做二次开发有帮助