endeavors / maxmd-registration
此包已被弃用且不再维护。未建议替代包。
提供易于与maxmd集成的API
v3.0.0
2019-10-31 18:00 UTC
Requires
- endeavors/contracts: dev-master
- endeavors/interoperability: dev-master
- endeavors/maxmd-apiauth: 0.1.*
- endeavors/maxmd-proofing: 0.4.*
- endeavors/maxmd-support: ~1.4.0
Requires (Dev)
- phpunit/phpunit: ^7.0
This package is not auto-updated.
Last update: 2022-01-21 04:30:30 UTC
README
这个库是对maxmd提供的API的适配。目的是提供优雅、简单和灵活的API,以轻松集成maxmd。
轻松验证一个人
use Endeavors\MaxMD\Registration\Person\Patient; ... // To easily proof a patient $person = [ 'ssn' => '999999999', 'mobilePhone' => "4805555555", 'email' => 'fake@email.com', 'street1' => '1234 Fake street', 'city' => 'Fake Town', 'state' => 'AK', 'country' => 'US', 'zip5' => '85412', 'firstName' => 'Bob', 'lastName' => 'Smith', 'ssn4' => '9999', 'dob' => '1985-10-03' ]; $response = Patient::Proof($person); // check a patient, does not send one time password $response = Patient::Check($person);
这将自动将一次性密码发送到提供的手机号码。
验证
在为个人设置直接账户的同时验证手机号码
$response = Patient::VerifyMobile($person, function($provision, $id) use($username, $password) { $response = $provision->ProvisionIDProofedPatient("yourown.direct.domain.here", ['idpId' => $id], $username, $password); });
验证信用卡
$person = [ 'personMeta' => [ 'firstName' => 'freddie', 'lastName' => 'smith', 'ssn4' => 9999, 'dob' => '1985-05-05' ], 'creditCard' => [ 'cardNumber' => '4111111111111111', 'cvv' => '382', 'expireYear' => '2019', 'expireMonth' => '09' ] ]; $response = Patient::VerifyCreditCard($person, function($provision, $id) use($username, $password) { $response = $provision->ProvisionIDProofedPatient("yourown.direct.domain.here", ['idpId' => $id], $username, $password); });
您可以使用VerifyAll方法尝试一种或两种验证方法。首先尝试电话验证
$response = Patient::VerifyAll($person, function($provision, $id) use($username, $password) { $response = $provision->ProvisionIDProofedPatient("yourown.direct.domain.here", ['idpId' => $id], $username, $password); });
如果个人的手机号码已经被验证,您仍然可以获取设置个人所需的ID。一次性密码将不再尝试使用Provision方法发送
$response = Patient::Provision($person, function($provision, $id) use($username, $password) { $response = $provision->ProvisionIDProofedPatient("yourown.direct.domain.here", ['idpId' => $id], $username, $password); });
注意:需要个人的用户名和密码来创建maxmd的账户并接收直接消息账户。
获取直接地址
确保您有正确的直接地址
$response = Patient::Provision($person, function($provision, $id) use($username, $password) { $response = $provision->ProvisionIDProofedPatient("yourown.direct.domain.here", ['idpId' => $id], $username, $password); // Call get address by username, a bit misleading as this does not return the direct address $provision->GetPatientAddressByUserName("yourown.direct.domain.here", "freddie"); // get the direct address username@yourown.direct.domain.here $directAddress = $provision->DirectAddress(); });
手动执行
// Proof // Verify mobile // Provision $provision = new \Endeavors\MaxMD\Registration\Person\Registration(); // assume freddie has performed and passed the above steps $provision->GetPatientAddressByUserName("yourown.direct.domain.here", "freddie"); $directAddress = $provision->DirectAddress();
设置成功响应
假设您从maxmd收到成功响应,并使用freddie作为用户名。响应将采用以下格式
response: {#176
"return": {#177
"code": "000"
"message": "Provisioned Direct address freddie@healthendeavors.direct.eval.md for patient Sdfsdf Rodriguez. The Direct address will be activated after the Direct certificate is issued."
"success": true
"users": {#178
"address": "1234 Fake street"
"city": "Fake Town"
"country": "us"
"dea": ""
"email": "fake@email.com"
"firstName": "Sdfsdf"
"lastName": "Rodriguez"
"npi": ""
"phone": "14803646662"
"sameAsOrganizationAddress": false
"state": "ALASKA"
"zipcode": "85412"
"comsumeMdnFlag": false
"endpoint": ""
"endpointDirectory": "null"
"endpointPassword": "null"
"endpointUsername": "null"
"notifyFlag": true
"userType": "SMTP"
"username": "freddie"
"userState": "activated"
}
"paymentConfirmation": {#179
"amount": 60.0
"detail": "Your payment for purchasing 1 MaxMD Patient Direct Address for patient Direct address: freddie@healthendeavors.direct.eval.md has been placed."
"orderId": 54930
"orderTime": "2017-11-03T11:27:27-05:00"
"products": {#180
"amount": 60.0
"description": "MaxMD Patient Direct Address 8/month 60/year"
"expireDate": "2018-11-03"
"name": "MaxMD Patient Direct Address"
"offerPrice": 60.0
"quantity": 1
"salePrice": 60.0
"startDate": "2017-11-03"
}
}
}
}
}