Momotu aunoa o nga kaiwhakamahi i roto i te ISPManager5 lite kaore he kaiwhakahaere BILL

Ka hoatu:

  1. VPS Server me te raihana mau tonu ispmanager lite 5
  2. 10-20 nga kaiwhakamahi mo ia tūmau
  3. Maramataka Google me nga whakamaharatanga auau mo te hunga kua pau te manaaki
  4. He mea whakama ki te utu mo etahi atu mea, ina koa me te ohaurunga.

Ko te whainga ko te whakakore i te maramataka a Google me nga whakamaharatanga a-ringa ki te kaihoko me utu e ia mo te manaaki. Whakaorangia koe i te "tuku kia mahi iti ake, ka utua e ia", "kaore e pai ki te whakaweto", ka tuku ki te miihini kore wairua.

Ko te tikanga, ka rapua e au i te tuatahi, engari karekau i kitea he otinga, ka kowhetetia katoa ki te meka e hiahia ana koe ki te ohauru ki te BILLmanager, engari ko te tohu Nama 4 he mea tino nui, he tino nui ki ahau, e kore ahau e whiwhi. whakakahoretia atu. A ko te whakatau kare i tino uaua.

Na ka aha tatou?

Waihangatia he kōpaki users.addon, i roto i te whaiaronga /usr/local/mgr5/etc/sql/, e rua nga konae kau:

  1. ra_utu
  2. uwemail

Ma tenei ka whakahau te roopu ki te hanga i roto i te papaa raraunga
/usr/local/mgr5/etc/ispmgr.db
kei te ripanga kaiwhakamahi e rua nga mara e rite ana ka tuhia nga uara mai i te papa whakahaere.

Waihangahia he konae ko ispmgr_mod_pay_data.xml ki te kōpaki /usr/local/mgr5/etc/xml me nga ihirangi

<?xml version="1.0" encoding="UTF-8"?>
<mgrdata>
	<metadata name="user.edit">
		<form>
			<page name="main">
				<field name="pay_date">
					<input type="text" name="pay_date"/>
				</field>
				<field name="uwemail">
					<input type="text" name="uwemail"/>
				</field>
			</page>
		</form>
	</metadata>
	<lang name="ru">
		<messages name="user.edit">
			<msg name="pay_date" sqlname="pay_date">Оплачено до</msg>
			<msg name="uwemail" sqlname="uwemail">Пользовательский email</msg>
		</messages>
	</lang>	
	<lang name="en">
		<messages name="user.edit">
			<msg name="pay_date" sqlname="pay_date">Paid before</msg>
			<msg name="uwemail" sqlname="uwemail">User email</msg>
		</messages>
	</lang>
</mgrdata>

Ka hoatu he ture ki te röpü kia whakaatuhia a mätou mara ki te puka whakatika a te kaiwhakamahi.

Whakahoutia te röpü:

/usr/local/mgr5/sbin/mgrctl -m ispmgr exit

Ka whiwhi tatou:

Momotu aunoa o nga kaiwhakamahi i roto i te ISPManager5 lite kaore he kaiwhakahaere BILL

I roto i nga mara ka tuhia e matou tae noa ki te ra me mahi te manaaki, me te aha te imeera a te kaiwhakamahi, kei hea te tuku whakamaumahara ka mutu te manaaki.

Inaianei me hanga he tuhinga hei whakamahara ki nga kaiwhakamahi ka mutu te manaaki i etahi wa. Whakamōhio atu ki te kaiwhakahaere kua mutu te manaaki. Whakamōhiotia te kaiwhakamahi me te kaiwhakahaere kua monokia te kaiwhakamahi.

He pai ki ahau te php ki runga ka tuhia he tuhinga.

<?php
$adminemail = "[email protected]"; // email админа
$day_send_message = [30,7,5,3,1]; // за сколько дней и с какой переодичностью будет напоминать пользователю что хостинг заканчивается
$db = new SQLite3('/usr/local/mgr5/etc/ispmgr.db');
$results = $db->query('SELECT * FROM users WHERE active == "on" AND pay_date IS NOT NULL');
while ($user = $results->fetchArray()) {
		$days_left=floor( ( strtotime($user['pay_date']) - time() ) / (60 * 60 * 24));
		if(in_array($days_left, $day_send_message)){
			if($user['uwemail'] != ""){
				mail($user['uwemail'], 'ISPMANAGER заканчивается хостинг через '.$days_left.' днейя', "Текст для пользователя о том что осталось столько то дней");
			}
		}
		if( $days_left == 3 ) {
			mail($adminemail, 'ISPMANAGER USER '.$user['name'], $user['name'] . " Закончится хостинг через ".$days_left." дня");
		}
		if($days_left <= 0){
			mail($adminemail, 'ISPMANAGER USER '.$user['name'].' DISABLED', $user['name'].' Отключен');
			exec("/usr/local/mgr5/sbin/mgrctl -m ispmgr user.suspend elid=".$user["name"]);
			if( $user['uwemail'] != "" ) {
				mail($user['uwemail'], 'ISPMANAGER хостинг отключен', 'Текст для пользователя что хостинг закончился'); 
			}
		}
		// при желании можно еще написать небольшой IF что бы данные удалялись через некоторое время, но мне это не нужно
}

Ka tiakina e matou tenei tuhinga ki nga waahi katoa ka kiia ko nga mea katoa e hiahia ana matou, ka taapirihia he mahi cron hei karanga kotahi i te ra. Kua reri katoa.

Inaianei kua marama taku hinengaro, kua makona te toad, a kaore au i utu i etahi atu utu.

Ko nga mea katoa e toe ana ko te whakakii i nga raraunga i roto i nga kaiwhakamahi i te ra i utua ai te manaaki, me te imeera a nga kaiwhakamahi ki te tuku whakamaumahara ki nga kaiwhakamahi.

Tena koa mena ka awhina tetahi.

Source: will.com

Tāpiri i te kōrero