`
zqb666kkk
  • 浏览: 727645 次
  • 性别: Icon_minigender_1
  • 来自: 宁波
社区版块
存档分类
最新评论

vtiger crm6.0自定义短信服务商二次开发

阅读更多
可能有些人连配置都没法新增 把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
0
0
分享到:
评论

相关推荐

    vtiger crm 6.0源码包

    vtiger crm 6.0源码包 最新版的vtiger

    vTiger CRM 6.0 beta.zip

    可以透过vtiger CRM 的厂商、制造商与经销商等单位取得商品信息*.透过仓库库存量与订单状况的整合来管理及时的库存水准*.可以根据各个组织需求自行调整的客户采购订单(PO)与销售订单(SO)字段*.避免动态显示付款与...

    vTigerCRM6.0.0中文包

    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 汉化vtigercrm 汉化

    Vtiger CRM 7.1 简体中文整合版

    Vtiger CRM是一个免费开源客户关系管理系统 ,这是 Vtiger CRM 7.x 版本的第二个稳定性更新,标志着 Vtiger 7.x版本已经逐渐趋于稳定。本资源在官方7.1英文原版基础上集成简体中文语言包。

    vTiger CRM vtigerCRM开发笔记

    vtigerCRM开发笔记 adodb 数据库操作类 cache 缓存 include 公共调用文件 logs 日志 modules 模块 Smarty 模板引擎

    vtigercrm汉化版(ssdcrm)

    ssdcrm是开源软件vtigercrm的深度汉化整合版本,它继承了vtigercrm灵活而强大的整合功能,方便二次开发与其他应用扩展. 电邮: yue11guang22ming@163.comThis 示范网站:www.89mc.net (账户与密码均为admin) 联系QQ:...

    Vtiger+CRM从入门到放弃

    Vtiger+CRM从入门到放弃 Vtiger+CRM从入门到放弃 Vtiger+CRM从入门到放弃

    vtiger6.0创建模块

    vtiger6.0创建模块方法未测试,开发人员可以使用库来开发vtigerCRM的模块,添加新的功能,以vtigerCRM的。这些模块可以被包装用于方便安装模块管理器。

    VtigerCRM 中文版使用手册

    详细说明VtigerCRM用户如何设置及其使用方式,让您快速的进入实际应用VtigerCRM的各种功能.

    vTigerCRM_Language 6.1.0 完美中文

    vTigerCRM_Language 6.1.0 完美中文

    vTiger 6.0 程序安装图文教程

    vTiger 6.0 程序安装图文教程 ossez.com

    中文VtigerCRM二次开发资料

    全面的用中文介绍了VtigerCRM二次开发模块流程,希望能帮助到更多的少走弯路。

    VtigerCRM开发工具与方法

    VtigerCRM 各模块查看、建立等等

    vtigercrm5.04汉化包及汉化方法

    精心整理的vtigercrm5.04汉化包及汉化方法 内附简体中文字体 此版include文件夹里的zh_cn.lang.php文件不正确,我重新上传了一次,罪过,罪过!正确版本请搜索 vtigercrm5.04汉化包及汉化方法(更正版)

    使用wampserver部署Vtigercrm8流程

    使用wampserver部署Vtigercrm8流程

    vtiger二次开发技术文档

    php CRM系统 vtiger 添加新模块技术文档。

    vtigercrm 5.4 中文语言包

    最新vtigercrm 5.4 中文语言包,修正了一些翻译的错误。发扬开源精神,现共享出来,希望vtigercrm在中国能越来越好。

    vtigerCRM5表结构图

    在老外网站摸到的表结构图 对于学习vtigercrm结构及做二次开发有帮助

Global site tag (gtag.js) - Google Analytics