Jump to content

Абонплата


Recommended Posts

Вот сегодня 1 число, у моих абонетов должна была сняться абонплата. Во всех тарифных планах указана абонка 15 грн, но почему то со всех сняло по-разному - у одного 10 у другого 4 или 2 грн. Это влияет от того когда я его подключил? Объясните плз. Ато вручную исправлял - устал с самого утра (((.

Link to post
Share on other sites

у меня по примеру первого стг

программка по крону снимает абонку (sgconf) :)

стг выполняет функцию счетчика денег, т.к. есть тарифы

Link to post
Share on other sites
у меня по примеру первого стг

программка по крону снимает абонку (sgconf) :)

стг выполняет функцию счетчика денег, т.к. есть тарифы

Pls.. script?

Link to post
Share on other sites

примитивнейшая программка, работает на первом стг

у клиента в папке /var/stagazer/users/client есть файл module

а если нету то создается

в нем пишется всего две строки:

abonka=yes

sum=10

размер абонплаты и надо ли снимать

очень давно писалось, извините :)

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <dirent.h>
#include <sys/stat.h>


int make_abonka(char *user, char *workdir)
{

char *stroka, filename[255], line[100];
char *s,ss[255],to_do[255];
char abonka[255],abon_sum[255];
FILE *f;
sprintf(filename, "%s/%s/module", workdir,user);



if (!fopen(filename,"r"))
{
 f=fopen(filename,"a");
 fputs("abonka=yes\nabon_sum=10\n",f);
 fclose(f);
}



f=fopen(filename,"r");
while (stroka=fgets(line, 100, f))
{
 strcpy(ss,stroka);
 s=strtok(ss,"\n\t\r=");

    if (s!=NULL)   
 {
     if (strcmp(s,"abonka")==0)
 	{
      s=strtok(NULL,"\n\t\r");
      sprintf(abonka,"%s",s);
 	}
 	if(strcmp(s,"abon_sum")==0)
      {
   s=strtok(NULL,"\n\t\r");
   sprintf(abon_sum,"%s",s);
          }
 }
}
fclose(f);

if (strcmp(abonka,"yes")==0)
{
 sprintf(to_do,"sgconf -C %s -c -%s",user,abon_sum);
 system(to_do);

}


return 0;
}

////////////////////// MAIN
int main(){
char filepath[255];
char workdir[255];
typedef char STRING[255];
STRING lines[200];
sprintf(filepath,"/etc/stargazer/stargazer.conf");
FILE *f;
int stroki=0;
f=fopen(filepath,"r");
while (fgets(lines[stroki], 100, f))
 {
 	if (strncmp("workdir",lines[stroki],7)==0)
   {
   	char ss[255];
   	char *s;

   	strcpy(ss,lines[stroki]);
   	s=strtok(ss," \n\t\r=");
   	s=strtok(NULL,"\n\t");
   	sprintf(workdir,"%susers",s);
   }
 }
fclose(f);

DIR * d;
struct stat st;
dirent * dir;

d=opendir(workdir);
while ((dir=readdir(d))!=NULL)
{
 if (strcmp(dir->d_name, ".") && strcmp(dir->d_name, ".."))
 	{
      

   make_abonka(dir->d_name,workdir);
 	}
}
closedir(d);

return 0;
}

Link to post
Share on other sites

Очень интересный вопрос,

у меня 2.016.7.6-RC3

экспериментировал: ставил DayFee=1, т.е. если я правильно понял, должно единоразово снять со счета абонку,

этого не было, а за то в снимается абонка/кол.дней ежедневно.

я еще не разбирался особо, но помоему я не ошибаюсь с настройкой (поправьте если не прав),

конечно можно на sgconf найти (написать) решение, но хотелось бы средствами сервера, может патч на сервер в конце концов (т.е. его поправить лучше) ...

Link to post
Share on other sites

отбой... дочитался:

# "Разамазанное" снятие абонплаты. Каждый день
# 1/30 (1/31, 12/28) часть абонплаты
SpreadFee=no

 

PS у меня параметр был yes и без коментов..... ЛОЛ)

Link to post
Share on other sites

2zulu_Radist:

СТГ считает абонку в зависимости от того, когда юзер подключился.

Точнее создался.

Создался 15го, насчитает половину.

Link to post
Share on other sites
2zulu_Radist:

СТГ считает абонку в зависимости от того, когда юзер подключился.

Точнее создался.

Создался 15го, насчитает половину.

Вот я это и подозревал - я же спрашивал, влияет ли когда я его подключил (то есть занес в базу СТГ). А что тогда мне egor2sys писал что это баг с абонкой, что они там тогда исправляли в очередной бете? хммм... я запуталсИ (((

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...