Menu

Tree [53a184] master /
 History

HTTPS access


File Date Author Commit
 .idea 2020-10-07 nazish nazish [53a184] Updated code with search and Display ads
 ad_click 2020-10-07 nazish nazish [53a184] Updated code with search and Display ads
 email_alert 2020-10-07 nazish nazish [53a184] Updated code with search and Display ads
 email_verification_module 2020-10-07 nazish nazish [53a184] Updated code with search and Display ads
 forgot_password 2020-10-07 nazish nazish [53a184] Updated code with search and Display ads
 humkinar_ads 2020-10-07 nazish nazish [53a184] Updated code with search and Display ads
 searchAdsDjango 2020-10-07 nazish nazish [53a184] Updated code with search and Display ads
 sqltosolr_connector 2020-10-07 nazish nazish [53a184] Updated code with search and Display ads
 CheckForZeroBalance.py 2020-10-07 nazish nazish [53a184] Updated code with search and Display ads
 Documentation.odt 2020-10-07 nazish nazish [53a184] Updated code with search and Display ads
 Solr Query Filters.txt 2020-10-07 nazish nazish [53a184] Updated code with search and Display ads
 UserFeedbackRedisUpdator.py 2020-10-07 nazish nazish [53a184] Updated code with search and Display ads
 developerguide.txt 2020-10-07 nazish nazish [53a184] Updated code with search and Display ads
 lampstack.txt 2020-10-07 nazish nazish [53a184] Updated code with search and Display ads
 listofpasswords.txt 2020-10-07 nazish nazish [53a184] Updated code with search and Display ads
 manage.py 2020-10-07 nazish nazish [53a184] Updated code with search and Display ads
 managed-schema 2020-10-07 nazish nazish [53a184] Updated code with search and Display ads
 packagesinstaller.sh 2020-10-07 nazish nazish [53a184] Updated code with search and Display ads
 readme.txt 2020-10-07 nazish nazish [53a184] Updated code with search and Display ads
 requirements.txt 2020-10-07 nazish nazish [53a184] Updated code with search and Display ads
 run_zero_balance_checker.sh 2020-10-07 nazish nazish [53a184] Updated code with search and Display ads
 runserver.sh 2020-10-07 nazish nazish [53a184] Updated code with search and Display ads
 runuserfeedbackupdator.sh 2020-10-07 nazish nazish [53a184] Updated code with search and Display ads

Read Me

#########################################################################################################
This is a readme file
#########################################################################################################
Please Follow the below instructions to run Humkinar Adserver Service on your System
#########################################################################################################



Software Requirements
#########################################################################################################
1. Pycharm							(Ubuntu Software Center)
2. Python 3.6.7						(Bash Script Name ===> packagesinstaller)
3. Django 2.1.3						(Filename ===> requirements.txt)
4. Django Rest Framework 3.9.0		(Filename ===> requirements.txt)
5. LAMP Stack						(Filename ===> lampstack.txt)
6. Apache Solr 6.6.1				(Link ===> http://archive.apache.org/dist/lucene/solr/)
#########################################################################################################

Steps to follow before running the Humkinar searchAd Service
Assuming no software and packages are already installed
If any package is already installed, please move onto the next step
#########################################################################################################
#########################################################################################################
- Run the package installer script. This will install the software and packages required for the Adserver
				./packagesinstaller.sh

Pycharm
###########################
- From the Ubuntu Software Center, install "Pycharm"

Python Packages
###########################
- From the directory "/searchAdsDjango" run the following command in terminal: 
				pip install -r /requirements.txt

Lamp Stack
###########################
- To install LAMP stack, please follow the instructions in the file "lampstack.txt"  

- After installing LAMP stack, open phpmyadmin from browser by typing : 
				<ipaddress>/phpmyadmin
					OR
				localhost/phpmyadmin

-  Create a new database 

Solr
###########################
- Download and build Apache Solr 6.6.1

- After you have built Solr, open the solr directory "<solr_path>/solr-6.6.1/" and run the following command to make a new core. 
				bin/solr create -c <corename>

- After making the core, go to the address :  <solr_path>/solr-6.6.1/server/solr/<corename>/conf

- Open the "managed-schema" file in the directory

- Copy the contents of the file "managed-schema" which came with the Adserver Source Code and paste it in the "managed-schema" file of the Solr directory mentioned in the step above. Save the "managed-schema" file and close it

- Now open the directory "<solr_path>/solr-6.6.1/" and run the following command to start the solr instance
				bin/solr start

- Note: Default port at which the solr runs is 8983

- Open the browser and enter the following address to check if solr is running
				<ipaddress>:<portnumber>

- Now solr is running on your system
#########################################################################################################
#########################################################################################################


Launching the Adserver Service
#########################################################################################################
- Now launch Pycharm and open the project "searchAdsDjango" in it

- Open the file "settings.py"

- Add the following lines to the "settings.py" file
				
				
				#####################################
				SOLR_HOST = <ipaddress> (Ip address of your localhost or of the server you are making the host)
				SOLR_PORT = <solrport>	(The port number on which solr instance is running)	
				SOLR_CORE = <solrcore>	(The name of the core which you created for Adserver)

				ALLOWED_HOSTS = ['0.0.0.0', '10.11.21.119']	(List of all ip addresses that will access the service)

				INSTALLED_APPS = [
    				'django.contrib.admin',
    				'django.contrib.auth',
    				'django.contrib.contenttypes',
    				'django.contrib.sessions',
    				'django.contrib.messages',
    				'django.contrib.staticfiles',
    				'rest_framework',
    				'humkinar_ads',]


    				DATABASES = {
    				'default': {
        			'ENGINE': 'django.db.backends.mysql',
        			'NAME': 'searchads',
       				'USER': 'root',
        			'PASSWORD': 'hpcnl123',
        			'HOST': '127.0.0.1',
        			'PORT': '3306'
        			}



				EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
				EMAIL_HOST = 'smtp.gmail.com'
				EMAIL_USE_TLS = True
				EMAIL_PORT = 587
				EMAIL_HOST_USER = 'humkinar@gmail.com'
				EMAIL_HOST_PASSWORD = 'humkinar@hpcnl@kics@uet'
        		#####################################

- Save "settings.py"

- Open the terminal in the source code directory where "manage.py" file is located

- Run the following commands

				python3 manage.py makemigrations

				python3 manage.py migrate

- After running these commands the database you created in mySQL has been populated with tables from the models.py file

- Now to run the Adserver service, run the command 
				
				python3 manage.py runserver <ipaddress>:<portnumber> (Define any unused port of the system)			
								OR
				python3 manage.py runserver 0.0.0.0:<portnumber>

- Now the Adserver service is running

- Make sure that your ip address is added on the firewall of the host system

- If it is not added, run the following commands

				sudo ufw allow from <ipaddress>

				sudo ufw status

#########################################################################################################



Search Ads
#########################################################################################################
- To search some ads send a GET request from any browser or Postman with the following format

		http://<ipaddress>:<portnumber>/query/api/middleware?query=<keywords>

- Ads will be retrived if there are some ads indexed on the solr core